Pressidian
花园入口
笔记
项目
关于
实验室
GitHub
花园入口
笔记
项目
关于
实验室
GitHub

KNOWLEDGE PATHS

笔记库
当前位置
笔记库/前端/三件套/JS/JavaScript

90 JavaScript知识点总目录

13 分钟阅读 · Note

目录树 578 篇

            • 00 JavaScript学习地图
            • 01 JavaScript基础
            • 02 类型系统与类型转换
            • 03 Number与String
            • 04 Array数组
            • 05 Object对象
            • 06 集合与迭代
            • 07 函数、作用域与this
            • 08 原型、构造函数与类
            • 09 Generator与异步迭代
            • 10 异步编程
            • 11 浏览器与DOM
            • 12 二进制与文件
            • 13 标准内建对象
            • 14 模块化
            • 15 错误处理
            • 16 JSDoc
            • 90 JavaScript知识点总目录
            • 91 JavaScript修正与补充记录
          • 前端模块化
      • 前端技术栈
    • 笔记目录
    • CLAUDE.md
    • Vue 组件与 Render 函数

关联笔记 6

↗01 JavaScript基础正文关联↗02 类型系统与类型转换正文关联↗03 Number与String正文关联↗04 Array数组正文关联↗05 Object对象正文关联↗06 集合与迭代正文关联
  • 90 JavaScript知识点总目录

90 JavaScript知识点总目录

> Last Format Time:8/11/2026 21:45:41

> 本目录是两套旧教程合并后的逐文件、逐标题覆盖清单。它用于证明知识没有因主题合并而消失,并提供到新笔记原始整合区的直接入口。


覆盖验收

  • 旧笔记:72/72 份已唯一映射到新主题笔记。
  • 原标题:350 项已保留并列入本目录。
  • 合并基线:曾对 2,827 行有效正文和 772 个代码块完成逐项匹配。
  • 当前状态:已知错误已直接修正或就地标注,因此错误片段不再追求与旧教程逐字一致;详见 [91 JavaScript修正与补充记录](./91 JavaScript修正与补充记录.md)。
  • 阅读规则:先读各主题的“当前前端开发关键要点”和“现代前端补充与纠错”,再按需查阅“旧笔记知识全集”。
  • 说明:原始教程中的错误和过时内容为保证覆盖审计而保留,不能覆盖纠错区的当前结论。

[01 JavaScript基础](./01 JavaScript基础.md)

[现代JS教程与阮一峰ES6 · 0基础简介/JS基础知识](./01 JavaScript基础.md)

  • JS基础
  • 严格模式
  • 在浏览器与用户交互的函数
  • alert
  • prompt
  • confirm
  • 数学运算
  • 严格相等
  • 条件分支
  • 逻辑运算符
  • 空值合并??
  • 循环
  • 函数
  • 箭头函数
  • 对象
  • 垃圾回收
  • 对象属性函数:方法
  • 可选链 ?.
  • symbol类型
  • 对象原始值转换

[现代JS教程与阮一峰ES6 · 1数据类型与变量/var let const](./01 JavaScript基础.md)

  • const
  • 顶层对象
  • 暂时性死域

[廖雪峰教程 · 2历史背景/2.1 JS历史](./01 JavaScript基础.md)

  • JS历史
  • ECMAScript
  • JavaScript版本

[廖雪峰教程 · 3快速入门/3.1基本语法](./01 JavaScript基础.md)

  • 基本语法
  • 注释
  • 大小写

[廖雪峰教程 · 3快速入门/3.6 条件判断](./01 JavaScript基础.md)

  • 条件判断
  • 多行条件判断

[廖雪峰教程 · 3快速入门/3.7 循环](./01 JavaScript基础.md)

  • 循环
  • for ... in
  • while
  • do ... while

[02 类型系统与类型转换](./02 类型系统与类型转换.md)

[现代JS教程与阮一峰ES6 · 1数据类型与变量/数据类型与转换](./02 类型系统与类型转换.md)

  • 数据类型与转换
  • 数据类型
  • 原始类型(Primitive,7 种)
  • 对象类型(Object)
  • 类型判断
  • typeof 运算符
  • instanceof
  • Object.prototype.toString.call()
  • 其他辅助方法
  • 原始类型的"包装对象"
  • 类型转换
  • 显式转换
  • 隐式转换(自动发生)

[廖雪峰教程 · 3快速入门/3.2 数据类型与变量](./02 类型系统与类型转换.md)

  • 数据类型与变量
  • 数据类型
  • Number
  • 字符串
  • 布尔值
  • 比较运算符
  • BigInt
  • null和undefined
  • 数组
  • 对象
  • 变量
  • strict模式

[03 Number与String](./03 Number与String.md)

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Number](./03 Number与String.md)

  • Number API
  • 数字类型
  • 浮点数的底层实现
  • 总结

[现代JS教程与阮一峰ES6 · 1数据类型与变量/String](./03 Number与String.md)

  • String
  • 字符串

[廖雪峰教程 · 3快速入门/3.3 字符串](./03 Number与String.md)

  • 字符串
  • 多行字符串
  • 模板字符串
  • 操作字符串
  • toUpperCase
  • toLowerCase
  • indexOf
  • substring

[04 Array数组](./04 Array数组.md)

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Arrray](./04 Array数组.md)

  • Array API
  • 数组

[廖雪峰教程 · 3快速入门/3.4 数组](./04 Array数组.md)

  • 数组
  • indexOf
  • slice
  • push和pop
  • unshift和shift
  • sort
  • reverse
  • splice
  • concat
  • join
  • 多维数组

[05 Object对象](./05 Object对象.md)

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Object/对象](./05 Object对象.md)

  • Object API
  • 对象的keys,values,entries

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Object/对象的属性配置](./05 Object对象.md)

  • 对象属性标志(数据描述符
  • 属性的访问器属性(存取描述符)

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Object/对象的循环引用与深克隆 ⌚️](./05 Object对象.md)

  • 对象的循环引用
  • 深拷贝与浅拷贝

[廖雪峰教程 · 3快速入门/3.5 对象](./05 Object对象.md)

  • 对象

[06 集合与迭代](./06 集合与迭代.md)

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Object/for...in与for...of](./06 集合与迭代.md)

  • JS中 for...in 和 for...of 的核心区别(超清晰版)
  • 一句话总结
  • 遍历的内容不同(最核心区别)
  • for...in
  • for...of
  • 适用数据类型不同
  • for...in
  • for...of
  • 遍历数组时的表现差异(重点)
  • 支持的语法特性
  • 最佳使用场景(背会就不会用错)
  • ✅ 用 for...in 的场景
  • ✅ 用 for...of 的场景
  • 极简记忆口诀
  • 总结

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Object/可迭代对象](./06 集合与迭代.md)

  • 可迭代对象

[现代JS教程与阮一峰ES6 · 1数据类型与变量/Object/类数组](./06 集合与迭代.md)

  • 类数组

[现代JS教程与阮一峰ES6 · 5特殊内建对象/Map和Set](./06 集合与迭代.md)

  • JavaScript中Map的实现原理
  • 核心实现:哈希表
  • 关键技术点与优化
  • 哈希冲突处理
  • 键的多样性支持
  • 迭代顺序维护
  • 总结:实现效果的原因
  • 与Object的对比
  • Map Set 映射和集合
  • Map
  • Set
  • 弱映射和弱集合
  • Set 的基本特性
  • Set 的常用方法与属性
  • 基本操作
  • 示例:
  • 遍历方法
  • 示例:
  • Set 的典型应用场景
  • 与数组的区别
  • 总结

[廖雪峰教程 · 3快速入门/3.8 Map与Set](./06 集合与迭代.md)

  • Map与Set
  • Map
  • Set

[廖雪峰教程 · 3快速入门/3.9 iterable](./06 集合与迭代.md)

  • iterable

[07 函数、作用域与this](./07 函数、作用域与this.md)

[现代JS教程与阮一峰ES6 · 2函数/作用域、闭包和this](./07 函数、作用域与this.md)

  • 变量作用域
  • 闭包
  • this

[现代JS教程与阮一峰ES6 · 2函数/函数进阶](./07 函数、作用域与this.md)

  • new function
  • setTimeOut setaInterval
  • 函数绑定
  • 透明缓存
  • 手动实现call、apply与bind
  • 实现 call
  • 实现 apply
  • 实现 bind
  • softBind
  • 函数参数Params和arguments对象
  • rest和spread
  • 全局对象
  • 函数对象

[现代JS教程与阮一峰ES6 · 2函数/扩展运算符](./07 函数、作用域与this.md)

  • 展开可迭代对象(拆分为单个元素)
  • 收集剩余元素(合并为数组)
  • 浅拷贝对象或数组
  • 二、扩展运算符与 apply 的对比
  • 三、注意事项
  • 总结

[现代JS教程与阮一峰ES6 · 2函数/箭头函数](./07 函数、作用域与this.md)

  • 箭头函数

[现代JS教程与阮一峰ES6 · 2函数/解构赋值与剩余模式(ES6)](./07 函数、作用域与this.md)

  • 数组的解构赋值
  • 嵌套数组解构
  • 对象的解构
  • 剩余模式:...

[廖雪峰教程 · 4函数/4.1 函数的定义与调用](./07 函数、作用域与this.md)

  • 函数的定义与调用
  • 定义函数
  • 调用函数
  • arguments
  • rest参数
  • 小心你的return语句

[廖雪峰教程 · 4函数/4.2 变量作用域与解构赋值](./07 函数、作用域与this.md)

  • 变量作用域与解构赋值
  • 变量提升
  • 全局作用域
  • 名字空间
  • 局部作用域
  • 常量
  • 解构赋值
  • 使用场景

[廖雪峰教程 · 4函数/4.3 方法](./07 函数、作用域与this.md)

  • 方法
  • apply
  • 装饰器

[廖雪峰教程 · 4函数/4.4 高阶函数](./07 函数、作用域与this.md)

  • 正文主题:4.4 高阶函数

[廖雪峰教程 · 4函数/4.5 闭包](./07 函数、作用域与this.md)

  • 闭包
  • 函数作为返回值
  • 闭包

[廖雪峰教程 · 4函数/4.6 箭头函数](./07 函数、作用域与this.md)

  • 箭头函数
  • this

[廖雪峰教程 · 4函数/4.7 标签函数](./07 函数、作用域与this.md)

  • 标签函数

[08 原型、构造函数与类](./08 原型、构造函数与类.md)

[现代JS教程与阮一峰ES6 · 2函数/构造函数与New](./08 原型、构造函数与类.md)

  • 构造函数
  • 手动实现一个new

[现代JS教程与阮一峰ES6 · 4原型与类/原型](./08 原型、构造函数与类.md)

  • 构造函数的Prototype
  • 原生的原型
  • 原型方法和没有__proto__的对象

[现代JS教程与阮一峰ES6 · 4原型与类/原型链](./08 原型、构造函数与类.md)

  • 原型链

[现代JS教程与阮一峰ES6 · 4原型与类/类](./08 原型、构造函数与类.md)

  • 基本语法
  • 类表达式
  • Getters/setters
  • 计算属性名称
  • “类字段”
  • 类继承
  • 重写方法
  • 静态属性和静态方法
  • 受保护的、私有的属性和方法
  • 私有的属性
  • 扩展内建类(使用内建类做父类)
  • 类检查
  • Mixin模式
  • 🤔 为什么需要 Mixin 模式?
  • 🛠️ 如何实现 Mixin 模式?
  • 使用 Object.assign() 进行属性复制
  • 使用高阶函数(类工厂)
  • ✨ Mixin 模式的优缺点
  • 优点
  • 缺点
  • 🌐 实际应用:Vue.js 中的 Mixin

[廖雪峰教程 · 6对象/6.0 简述](./08 原型、构造函数与类.md)

  • 正文主题:6.0 简述

[廖雪峰教程 · 6对象/6.1 创建对象](./08 原型、构造函数与类.md)

  • 创建对象
  • 构造函数
  • 忘记写new怎么办

[廖雪峰教程 · 6对象/6.2 原型继承](./08 原型、构造函数与类.md)

  • 原型继承

[廖雪峰教程 · 6对象/6.3 类的继承](./08 原型、构造函数与类.md)

  • 类的继承
  • class继承

[09 Generator与异步迭代](./09 Generator与异步迭代.md)

[现代JS教程与阮一峰ES6 · 2函数/Generator函数](./09 Generator与异步迭代.md)

  • generator是可迭代的
  • generator是可以组合的

[现代JS教程与阮一峰ES6 · Generator&Iteration/Generator](./09 Generator与异步迭代.md)

  • Generator
  • generator 函数
  • generator 是可迭代的
  • 使用 generator 进行迭代
  • generator 组合
  • yield向内部传值
  • generator.throw
  • generator.return
  • 总结

[现代JS教程与阮一峰ES6 · Generator&Iteration/异步迭代](./09 Generator与异步迭代.md)

  • 异步迭代

[廖雪峰教程 · 4函数/4.8 生成器](./09 Generator与异步迭代.md)

  • 生成器

[10 异步编程](./10 异步编程.md)

[现代JS教程与阮一峰ES6 · 6异步编程/Promise与回调](./10 异步编程.md)

  • 回调
  • Promise
  • Promise链
  • 错误处理
  • Promise的静态方法(API)
  • all
  • allSettled:
  • Promisification
  • 微任务
  • async/await

[廖雪峰教程 · 7浏览器/7.5 Promise](./10 异步编程.md)

  • Promise
  • 手撸代码
  • 💡 Promise 基础
  • 🤔 Promise 是如何实现异步的?
  • 执行顺序解析
  • 📌 核心要点
  • 🤝 Promise.all 实现
  • 🏎️ Promise.race 实现
  • ✨ Promise.any 实现
  • 📝 总结
  • 🛠️ 实现 Promise.map
  • 📝 使用示例
  • ✨ 进阶:增加并发限制
  • 📌 总结

[廖雪峰教程 · 7浏览器/7.6 async](./10 异步编程.md)

  • async

[11 浏览器与DOM](./11 浏览器与DOM.md)

[廖雪峰教程 · 7浏览器/7.1DOM/7.1.1 浏览器对象](./11 浏览器与DOM.md)

  • 浏览器对象
  • window
  • navigator
  • screen
  • location
  • document
  • history

[廖雪峰教程 · 7浏览器/7.1DOM/7.1.2 操作DOM](./11 浏览器与DOM.md)

  • 操作DOM
  • 更新DOM

[廖雪峰教程 · 7浏览器/7.1DOM/7.1.3 插入DOM](./11 浏览器与DOM.md)

  • 插入DOM
  • insertBefore

[廖雪峰教程 · 7浏览器/7.1DOM/7.1.4 删除DOM](./11 浏览器与DOM.md)

  • 删除DOM

[廖雪峰教程 · 7浏览器/7.2 表单](./11 浏览器与DOM.md)

  • 表单
  • 获取值
  • 设置值
  • HTML5控件
  • 提交表单

[廖雪峰教程 · 7浏览器/7.4 AJAX](./11 浏览器与DOM.md)

  • AJAX
  • 安全限制
  • CORS

[廖雪峰教程 · 7浏览器/7.7 Canvas](./11 浏览器与DOM.md)

  • Canvas
  • 绘制形状
  • 绘制文本

[12 二进制与文件](./12 二进制与文件.md)

[现代JS教程与阮一峰ES6 · 5特殊内建对象/二进制与文件读取/二进制](./12 二进制与文件.md)

  • ArrayBuffer、TypedArray 与 DataView 详解
  • ArrayBuffer - 原始二进制数据缓冲区
  • TypedArray - 类型化数组视图
  • TypedArray 的特点
  • 常见的 TypedArray 类型
  • 基本创建与使用
  • 直接初始化
  • TypedArray 与普通数组的核心区别
  • DataView - 灵活的数据访问视图
  • 内存布局与字节序
  • ==实际应用示例==
  • 性能优化与使用场景
  • 与 Blob 的转换
  • Blob、File 与 Object URL 详解
  • Blob 对象
  • File 对象
  • FileReader 读取文件内容
  • Object URL
  • Base64 与 DataURL
  • Data URL
  • 关系
  • 内存管理最佳实践
  • 使用场景对比
  • MIME
  • 类型(Type)
  • 子类型(Subtype)
  • 常见 MIME 类型示例
  • 重要参数:charset
  • 在实际中的应用

[现代JS教程与阮一峰ES6 · 5特殊内建对象/二进制与文件读取/最佳实践](./12 二进制与文件.md)

  • 正文主题:最佳实践

[廖雪峰教程 · 7浏览器/7.3 文件](./12 二进制与文件.md)

  • 文件
  • File API
  • 回调

[13 标准内建对象](./13 标准内建对象.md)

[现代JS教程与阮一峰ES6 · 5特殊内建对象/Date](./13 标准内建对象.md)

  • Date

[现代JS教程与阮一峰ES6 · 5特殊内建对象/JSON](./13 标准内建对象.md)

  • JSON

[现代JS教程与阮一峰ES6 · 5特殊内建对象/Proxy与Reflect](./13 标准内建对象.md)

  • Reflect

[廖雪峰教程 · 5标准对象/5.1 简述](./13 标准内建对象.md)

  • 包装对象

[廖雪峰教程 · 5标准对象/5.2 RegExp](./13 标准内建对象.md)

  • 进阶
  • RegExp
  • 切分字符串
  • 分组
  • 贪婪匹配
  • 全局搜索

[14 模块化](./14 模块化.md)

[现代JS教程与阮一峰ES6 · 7模块/CJS和ESM](./14 模块化.md)

  • 核心区别对比表
  • 详细解释
  • 来源与历史
  • 语法
  • 加载方式:静态 vs. 动态
  • 加载时机:同步 vs. 异步
  • 值引用 vs. 值拷贝
  • 运行环境
  • 总结与如何选择

[现代JS教程与阮一峰ES6 · 7模块/Module(模块)语法](./14 模块化.md)

  • 导入导出类型不匹配错误
  • 路径错误
  • 重复导入
  • 导出变量未定义
  • 循环依赖
  • 导入导出的语法错误

[15 错误处理](./15 错误处理.md)

[现代JS教程与阮一峰ES6 · 3错误处理/错误处理](./15 错误处理.md)

  • try...catch
  • Error对象
  • 自定义Error,Error的继承

[廖雪峰教程 · 8错误处理/8.0 简介](./15 错误处理.md)

  • 简介
  • try ... catch ... finally
  • 错误类型
  • 抛出错误

[廖雪峰教程 · 8错误处理/8.1 错误传播](./15 错误处理.md)

  • 错误传播

[廖雪峰教程 · 8错误处理/8.2 异步处理](./15 错误处理.md)

  • 异步处理

[16 JSDoc](./16 JSDoc.md)

[现代JS教程与阮一峰ES6 · 0基础简介/JSDoc](./16 JSDoc.md)

  • 基本语法和规范
  • 类型声明
  • 应用到不同的代码结构
  • 配合工具使用